package com.hyfrogx.modules.sys.service;

import com.hyfrogx.modules.sys.entity.SysUserEntity;
import com.hyfrogx.modules.sys.entity.SysUserTokenEntity;

import java.util.Set;

/**
 * TODO shiro服务的相关接口
 *
 * @author crazypenguin
 * @version 1.0.0
 * @createdate 2019/1/2
 */
public interface ShiroService {
	/**
	 * 获取用户权限列表
	 */
	Set<String> getUserPermissions(long userId);

	SysUserTokenEntity queryByToken(String token);

	/**
	 * 根据用户ID，查询用户
	 *
	 * @param userId
	 */
	SysUserEntity queryUser(Long userId);

	/**
	 * 根据用户名查找用户
	 *
	 * @param username
	 * @return
	 */
	SysUserEntity queryByUserName(String username);

	/**
	 * 创建token
	 *
	 * @return
	 */
	String createToken();
}
